软件开发项目是一种技术密集型项目,开发过程中经常会遇到一些新技术、专有技术或项目组缺乏经验的技术,这些技术决定了项目的进度、质量,甚至成败,因此对软件项目中识别到的技术风险要有足够的重视,并采取积极的措施加以应对。
新技术、专有技术,亦或是项目缺乏经验的技术是项目组经常要面对的三种技术风险。不同的技术风险在应对措施上也有很大的差异,因此在识别到技术风险后,一定要进一步的确认技术风险的种类,并制定与之相适应的应对措施,才能有效的降低或规避这些技术风险。
新技术是指由于软件项目中的一些特殊要求所产生的,在目前市场上获取不到的技术或方法。对与这类技术风险通常有两种应对方法:
1.变更需求。与项目建设方积极沟通,说明技术的不可获取性,赢得客户的理解和支持,改变需求,消除对新技术的依赖。
2.技术公关。在明确对新技术的强制依赖的前提下,组建新技术公关小组,通过技术创新,获得新技术。这种做法具有一定的不确定性,需要做好进度延迟或项目失败的预案。
专有技术是指具有知识产权约束的技术,这类技术通常不被建设方或承建方所掌握,在使用的时候主要的风险在于是否能够在满足成本、时间约束的条件下获取。这类的的主要应对措施包括:
1.明确专有技术的来源、成本和时间约束。与技术的所有者进行积极的沟通,确定采购成本和交付时间、交付品质等内容,在此基础上评估项目的成本及时间承受能力,并将评估结果及时上报相关领导,以获取领导的批准和支持。
2.通过自足研发来获取和替代专有技术。这需要项目组具备足够的技术创新能力,并在进度约束允许的情况下进行。这种策略虽然会提高项目组对技术的掌控力,但同样也会给项目组带来技术的不确定性,从而增加项目的交付风险。
3.委托第三方科研机构来研发专有技术。通常由于......